/**
 * app 入口文件
 */

require('./core/route.js');
var C = require('./core/config.js');
var HEADER = require('./modules/header/header.js');
var FOOTER = require('./modules/footer/footer.js');

/*-------------------------------全局初始化执行方法-------------------------------*/
$(function () {
    //初始化页头
    HEADER.initialization("zh", null);
    //初始化页脚
    FOOTER.initialization("en", null);

    /*var $header = $('header');
    var headerData = C.HEADER;
    headerData.ready = function () {
        $header.trigger("headerReady");
    };
    
    $header.bhHeader(headerData);*/
    
    //初始化页脚
    /*$('[bh-footer-role="footer"]').bhFooter({
        text: "版权信息：© 2015 江苏金智教育信息股份有限公司 苏ICP备10204514号" //必填，显示的文本
    });
*/
   /* window.addEventListener("message", function (e) {
        var data = e.data;
        if (data === "reload") {
            window.location.reload();
        }
    }, false);*/

    $("body").niceScroll({
        zindex: 9999
    });

    $(document).on('click', function () {
    	/*$('.jqx-window').each(function () {
            $(this).on('close', function () {
                $("body").niceScroll({
                    zindex: 9999
                });
                $('body').removeClass('overflowHidden');
            });
        });*/

        /*var $windowModal = $('.jqx-window-modal');
        var flag = false;
        if ($windowModal.length !== 0) {
            $windowModal.each(function () {
                if (!$(this).is(':hidden')) {
                    flag = true;
                }
            });
            if (flag) {
                $('body').getNiceScroll().remove();
                $('body').addClass('overflowHidden');
            } else {
                $("body").niceScroll({
                    zindex: 9999
                });
                $('body').removeClass('overflowHidden');
            }
        }*/
    });
});
//处理键盘事件 禁止后退键（Backspace）密码或单行、多行文本框除外
function banBackSpace(e) {
    var ev = e || window.event;//获取event对象
    var obj = ev.target || ev.srcElement;//获取事件源
    var t = obj.type || obj.getAttribute('type');//获取事件源类型
    //获取作为判断条件的事件类型
    var vReadOnly = obj.getAttribute('readonly');
    var vEnabled = obj.getAttribute('enabled');
    //处理null值情况
    vReadOnly = (vReadOnly == null) ? false : vReadOnly;
    vEnabled = (vEnabled == null) ? true : vEnabled;

    //当敲Backspace键时，事件源类型为密码或单行、多行文本的，
    //并且readonly属性为true或enabled属性为false的，则退格键失效
    var flag1_t = (t === "password" || t === "text" || t === "textarea");
    var flag1_v = (vReadOnly === true || vEnabled !== true);
    var flag1 = (ev.keyCode === 8 && flag1_t && flag1_v) ? true : false;

    //当敲Backspace键时，事件源类型非密码或单行、多行文本的，则退格键失效
    var flag2_t = t !== "password" && t !== "text" && t !== "textarea";
    var flag2 = (ev.keyCode === 8 && flag2_t) ? true : false;

    //判断
    if (flag2) {
        return false;
    }
    if (flag1) {
        return false;
    }
}

/**
 * 特殊字符校验`'":~!@#$%^&*{}<>?|\/+=¥‘“？
 * 如果输入框上有noCheckForbidden则不做校验
 */
function checkForbiddenChar(str) {
    var reg = /[`'#"\$%\^\¥]+/g;
    var flag = reg.test(str);
    var val = str.replace(reg, '');
    return {
        flag: flag,
        val: val
    };
}

$(document).on('blur keypress keydown keyup focus', 'input:not([noCheckForbidden]), textarea:not([noCheckForbidden])', function () {
    var str = $(this).val();
    var result = checkForbiddenChar(str);
    if (result.flag) {
        $(this).val(result.val);
        return false;
    }
});


//禁止后退键 作用于Firefox、Opera
document.onkeypress = banBackSpace;
//禁止后退键  作用于IE、Chrome
document.onkeydown = banBackSpace;